---
layout: docs
page_title: 'nomad job history command reference'
description: |
  The `nomad job history` command displays the history of a single version or all tracked versions of a job. Optionally display the difference between two versions or tags or differences between each job and its predecessor.
---

# `nomad job history` command reference

The `job history` command is used to display the known versions of a particular
job. The command can display the diff between job versions and can be useful for
understanding the changes that occurred to the job as well as deciding job
versions to revert to.

## Usage

```plaintext
nomad job history [options] <job>
```

The `job history` command requires a single argument, the job ID or an ID prefix
of a job to display the history for.

When ACLs are enabled, this command requires a token with the `read-job`
capability for the job's namespace. The `list-jobs` capability is required to
run the command with a job prefix instead of the exact job ID.

## Options

- `-p`: Display the differences between each job and its predecessor.
- `-full`: Display the full job definition for each version.
- `-version`: Display only the history for the given version.
- `-json` : Output the job versions in its JSON format.
- `-t` : Format and display the job versions using a Go template.
- `-diff-version`: Compare the job with a specific version.
- `-diff-tag`: Compare the job with a specific tag.


## Examples

Display the history showing differences between versions:

```shell-session
$ nomad job history -p e
Version     = 2
Stable      = false
Submit Date = 07/25/17 20:35:43 UTC
Diff        =
+/- Job: "example"
+/- Task Group: "cache"
  +/- Task: "redis"
    +/- Resources {
          CPU:      "500"
          DiskMB:   "0"
      +/- MemoryMB: "256" => "512"
        }

Version     = 1
Stable      = false
Submit Date = 07/25/17 20:35:31 UTC
Diff        =
+/- Job: "example"
+/- Task Group: "cache"
  +/- Count: "1" => "3"
      Task: "redis"

Version     = 0
Stable      = false
Submit Date = 07/25/17 20:35:28 UTC
```

Display the memory ask across submitted job versions:

```shell-session
$ nomad job history -t "{{range .}}\
v{{.Version}}: {{with index .TaskGroups 0}}{{with index .Tasks 0}}{{.Resources.MemoryMB}}{{end}}{{end}}\

{{end}}" example
v2: 512
v1: 256
v0: 256
```

Compare the current job with a specific older version:

```shell-session
$ nomad job history -version=3 -diff-version=1 example
Version     = 3
Stable      = false
Submit Date = 07/25/17 20:35:43 UTC
Diff        =
+/- Job: "example"
+/- Task Group: "cache"
  +/- Task: "redis"
    +/- Resources {
          CPU:      "500"
          DiskMB:   "0"
      +/- MemoryMB: "256" => "512"
        }
```

Compare all job versions with a specific version by tag name:

```shell-session
$ nomad job history -diff-tag=low-energy-version example

Version     = 3
Stable      = false
Submit Date = 2024-09-09T16:41:53-04:00
Diff        =
+/- Job: "example"
+/- Task Group: "group"
  +/- Count: "3" => "4"
      Task: "task"

Version         = 2
Stable          = false
Submit Date     = 2024-09-09T16:41:53-04:00
Tag Name        = low-energy-version
Tag Description = test description

Version     = 1
Stable      = false
Submit Date = 2024-09-09T16:41:53-04:00
Diff        =
+/- Job: "example"
+/- Task Group: "group"
  +/- Count: "3" => "2"
      Task: "task"

Version     = 0
Stable      = false
Submit Date = 2024-09-09T16:41:53-04:00
Diff        =
+/- Job: "example"
+/- Task Group: "group"
  +/- Count: "3" => "1"
      Task: "task"
```

## General options

@include 'general_options.mdx'
